package com.sybil.spa.servicio;

import com.sybil.spa.dao.ConceptoGastoDAO;
import com.sybil.spa.dao.ImpuestoDAO;
import com.sybil.spa.dao.MonedaDAO;
import com.sybil.spa.dao.ProveedorDAO;
import com.sybil.spa.dao.TipoComprobanteDAO;
import com.sybil.spa.dominio.r12.ConceptoGasto;
import com.sybil.spa.dominio.r12.Impuesto;
import com.sybil.spa.dominio.r12.Moneda;
import com.sybil.spa.dominio.r12.Proveedor;
import com.sybil.spa.dominio.r12.TipoComprobante;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

@Service("catalogosR12Servicio")
@Transactional(readOnly = true)
public class CatalogosR12Servicio {

   @Autowired
   private ConceptoGastoDAO conceptoGastoDAO;
   @Autowired
   private TipoComprobanteDAO tipoComprobanteDAO;
   @Autowired
   private MonedaDAO monedaDAO;
   @Autowired
   private ImpuestoDAO impuestoDAO;
   @Autowired
   private ProveedorDAO proveedorDAO;

   public List<ConceptoGasto> obtenerConceptosGasto() {
      return conceptoGastoDAO.getConceptosGasto();
   }

   public List<TipoComprobante> obtenerTiposComprobante() {
      return tipoComprobanteDAO.getTiposComprobante();
   }

   public List<Moneda> obtenerMonedas() {
      return monedaDAO.getMonedas();
   }

   public List<Impuesto> obtenerImpuestos() {
      return impuestoDAO.getImpuestos();
   }

   public List<Proveedor> obtenerProveedores() {
      return proveedorDAO.getProveedores();
   }

   public Proveedor obtenerProveedor(int numeroProveedor) {
      return proveedorDAO.getProveedor(numeroProveedor);
   }

   public ConceptoGasto obtenerConceptoGasto(int numeroConcepto) {//detalle de gasto
      return conceptoGastoDAO.getConceptoGasto(numeroConcepto);
   }

   public TipoComprobante obtenerTipoComprobante(String clave) {
      return tipoComprobanteDAO.getTipoComprobante(clave);
   }

   public Moneda obtenerMoneda(String clave) {
      return monedaDAO.getMoneda(clave);
   }
}
